package lc.q101_150;

public class Q137 {

    public int singleNumber(int[] nums) {
        int result = 0;
        for (int i = 0; i < 32; i++) {
            // 得到每一位的值
            // 当前位数的值
            int sum = 0;
            int k = 1 << i;
            for (int num : nums) {
                // 当前位数是1,则&值不会是0
                if ((num & k) != 0) {
                    sum ++;
                }
            }
            // 除以3的余数就是当前位数的值
            if (sum % 3 != 0) {
                result |= k;
            }
        }
        return result;
    }

    public static void main(String[] args) {

    }
}
